home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga Format CD 11
/
Amiga Format AFCD11 (Feb 1997, Issue 95).iso
/
-seriously_amiga-
/
commercial
/
ppaint7demo
/
rexx
/
animbrushtoanim.pprx
next >
Wrap
Text File
|
1997-01-31
|
3KB
|
137 lines
/* Personal Paint Amiga Rexx script - Copyright © 1995-1996 Cloanto Italia srl */
/* $VER: AnimBrushToAnim.pprx 1.1 */
/** ENG
This script converts the current anim-brush into an animation, creating
the animation in the current environment.
*/
/** DEU
Dieses Skript wandelt den aktuellen AnimBrush in eine Animation um.
Dabei wird die aktuelle Arbeitsumgebung verwendet.
*/
IF ARG(1, EXISTS) THEN
PARSE ARG PPPORT
ELSE
PPPORT = 'PPAINT'
IF ~SHOW('P', PPPORT) THEN DO
IF EXISTS('PPaint:PPaint') THEN DO
ADDRESS COMMAND 'Run >NIL: PPaint:PPaint'
DO 30 WHILE ~SHOW('P',PPPORT)
ADDRESS COMMAND 'Wait >NIL: 1 SEC'
END
END
ELSE DO
SAY "Personal Paint could not be loaded."
EXIT 10
END
END
IF ~SHOW('P', PPPORT) THEN DO
SAY 'Personal Paint Rexx port could not be opened'
EXIT 10
END
ADDRESS VALUE PPPORT
OPTIONS RESULTS
OPTIONS FAILAT 10000
Get 'LANG'
IF RESULT = 1 THEN DO /* Deutsch */
txt_err_nofrm = 'Frameerstellung für Umgebung_nicht möglich'
txt_err_nofmt = 'Einstellung des Umgebungsformats_nicht möglich.'
txt_err_oldclient = 'Für dieses Skript_ist eine neuere Version_von Personal Paint erforderlich'
END
ELSE IF RESULT = 2 THEN DO /* Italiano */
txt_err_nofrm = 'Impossibile trovare fotogrammi'
txt_err_nofmt = 'Impossibile impostare formato'
txt_err_oldclient = 'Questa procedura richiede_una versione più recente_di Personal Paint'
END
ELSE DO /* English */
txt_err_nofrm = 'Environment frames_cannot be created'
txt_err_nofmt = 'Environment format_cannot be set'
txt_err_oldclient = 'This script requires a newer_version of Personal Paint'
END
Version 'REXX'
IF RESULT < 7 THEN DO
RequestNotify 'PROMPT "'txt_err_oldclient'"'
EXIT 10
END
FreeEnvironment 'QUERY'
IF RC ~= 0 THEN
EXIT RC
LockGUI
loaded = 0
GetBrushAttributes 'FRAMES'
frnum = RESULT
IF frnum = 0 THEN DO
LoadAnimBrush
IF RC = 0 THEN DO
GetBrushAttributes 'FRAMES'
frnum = RESULT
loaded = 1
END
END
IF frnum > 0 THEN DO
GetBrushAttributes 'WIDTH'
bw = RESULT
GetBrushAttributes 'HEIGHT'
bh = RESULT
GetBrushAttributes 'COLORS'
bcol = RESULT
GetBrushAttributes 'DISPLAY'
bdisp = RESULT
GetBrushAttributes 'HANDLEX'
bhx = RESULT
GetBrushAttributes 'HANDLEY'
bhy = RESULT
GetBrushAttributes 'LENGTH'
bfl = RESULT
GetBrushAttributes 'FRAMEPOSITION'
bfp = RESULT
Get 'GCLIP'
saveclip = RESULT
Set '"GCLIP=0"'
DeleteFrames 'ALL FORCE'
ClearImage 'FORCE'
Set '"IMAGEW='bw'" "IMAGEH='bh'" "COLORS='bcol'" "DISPLAY='bdisp'" "SCREENW='bw'" "SCREENH='bh'" "ASCROLL=0"'
IF RC = 0 THEN DO
AddFrames frnum
IF RC = 0 THEN DO
SetFramePosition 1
SetBrushAttributes 'HANDLEX 0 HANDLEY 0 LENGTH' frnum 'FRAMEPOSITION 1'
SetPaintMode 'REPLACE'
DO frm = 1 TO frnum
PutBrush 0 0
UseBrushPalette
SetFramePosition 'NEXT'
END
SaveAnimation
END
ELSE
RequestNotify 'PROMPT "'txt_err_nofrm'"'
END
ELSE
RequestNotify 'PROMPT "'txt_err_nofmt'"'
SetBrushAttributes 'HANDLEX' bhx 'HANDLEY' bhy 'LENGTH' bfl 'FRAMEPOSITION' bfp
DeleteFrames 'ALL FORCE'
ClearImage 'FORCE'
Set '"GCLIP='saveclip'"'
END
IF loaded THEN
FreeBrush 'FORCE'
UnlockGUI